1. Field of the Invention
This invention relates generally to the field of optical lithography, and in particular, to a method for model-based Optical Proximity Correction (OPC) that extends the Region of Interest (ROI) beyond its interaction distance (ID) to reduce the amount of time required to locate and summate convoluted vertices of a polygon within the ROI for the total convolution of such polygon.
2. Description of Related Art
In the fabrication of semiconductor devices, optical microlithography processing generally requires duplicating desired circuit patterns on a semiconductor wafer. These desired circuit patterns are represented as opaque and transparent regions on a template, referred to as a photomask, which are then projected onto photoresist-coated wafers by way of optical imaging through an exposure system.
A valuable tool for analyzing and correcting for optical lithography in semiconductor fabrication is an aerial image simulator. These aerial image simulators compute images generated by optical projection systems, such that, the modeling of aerial images is a crucial component in semiconductor manufacturing. However, since present lithographic tools employ partially coherent illumination, such modeling is computationally intensive for all but elementary patterns. The aerial image produced by the mask, i.e., the light intensity in an optical projection system's image plane, is a critically important quantity in microlithography for governing how well a developed photoresist structure replicates a desired mask design.
In OPC software, the image intensity is usually calculated by a bilinear transform having a specific kernel function that describes the physics of the process. This may be accomplished by way of an optical kernel corresponding to a Hopkin's integral or a composite kernel that includes resist effects. For example, for short range effects the bilinear transform can be optimally reduced to a sum of simple linear convolutions by the Sum of Coherent Sources (SOCS) method, whereas for intermediate range effects or other non-optical effects the bilinear transform may be reduced to a linear convolution between mask pattern and an intensity kernel.
For very long-range effects, the problem can be reduced still further to represent the mask by a coarse grid wherein each pixel is an average pattern density of features within that grid-square. The convolution between the coarse grid and the incoherent kernel can be done very rapidly, e.g. via Fast Fourier transform (FFT) to gain speed since an FFT can generate convolution for all pixels at the same time, or by newer more rapid methods that provide the same benefit.
However, the short and intermediate range is a critical part that can be time consuming due to the need to address individual polygons. Normal practice for calculating short and intermediate range effects typically includes spatially truncating the kernel by some practical assumption to provide a table lookup of the convolution of basic building block sectors which is stored within a table of finite and acceptable size.
The above prior art convolution techniques are commonly performed on polygon features using either sector-based algorithms or edge-based algorithms. These sector-based algorithms, which may be calculated using sectors at a variety of angles, allow for the convolution over a sector to be pre-calculated as base-images and stored in a table or matrix. For example, conventional practice for a sector based OPC engine may include decomposing a polygon into a collection of sectors of either 90-degree angles (as shown in FIG. 1) or 45-degree angles (as shown in FIGS. 2A-B).
For example, FIG. 1 depicts lookup table values for a variety of 90-degree sectors for various calculated points “X0” inside the square ROI 10. At any point “X0” inside the ROI, the table value is constant along any one of the straight contour lines 20. However, for any point “X0” 30 that resides outside ROI 10, the contour line 20 is extended outside the ROI, either horizontally or vertically, and the convolution value for such point “X0” 30 is taken at the boundary of the ROI along the same straight contour line at point “X0*” 30′ as is shown.
Further with respect to FIG. 1, all convolution contributions of each point or vertex lying within the ROI are pre-calculated and stored in a matrix. That is, the table lookup comprises calculations for each and every point lying within the ROI. For all other points outside the ROI that are not contributing to the polygon, e.g., those points beyond the left and bottom boundaries of the ROI, the convolution values of such points are equal to zero. The convolution of the polygon, with the kernel, is then calculated by summing the contributions of each and every contributing pre-calculated, stored sector lying within the ROI. However, in so doing, it is required that each of these contributing pre-calculated, stored sectors be located within the ROI table lookup, and then its convolution contribution is retrieved for the summation of convolution of the polygon. This task is not only time consuming and tedious, but it also requires a sufficient amount of memory and storage capacity.
In another example of conventional sector based OPC calculations, FIGS. 2A and 2B illustrate lookup table values for 45-degree sectors that are skewed laterally, each having a 45-degree slope in the upper region and a constant value across the contour line. Accordingly, when point “X0” 30 lies above the ROI 10, the value will now be taken at point “X0*” 30′ that lies on the boundary of ROI and along the same laterally skewed contour line. Similarly, at any point “X0” inside the ROI, the table value is constant along any one of the laterally skewed 45-degree sectors. Convolutions at each 45-degree sector vertex, i.e., point, are then calculated and stored in a matrix for the subsequent summation of convolution of the polygon. However, this approach is also time consuming and tedious as each pre-calculated, stored sector vertex of the polygon must be retrieved for the summation of convolution of all vertices of the polygon.
A further disadvantage of 45-degree sectors is that any points lying outside the radius relative to the vertex of the skewed ROI 10′, as is depicted by the arrow in FIG. 2B, are outside of the pre-calculated matrix, and therefore, will not add any contribution to convolution of the polygon. As such, conventional practice is to extend the skewed ROI 10′ by a distance of ((1-1/sqrt (2))×interaction distance (ID)) on all 4 sides of the table by this amount to provide a new ROI 15. Yet, in so doing, the table lookup must now be expanded to all 4 extended sides, such that the convolution contribution of each and every point or vertex residing within these extended 4 sides must now be calculated and stored within the table lookup. This adds to both time and memory requirements as these additional pre-calculated, stored vertices must now also be located for the total convolution summation of all vertices.
Other common techniques for convolving polygons for optical proximity correction include polygon pinning and polygon cropping procedures. Polygon cropping procedures generally involve generating multiple polygons representative of vertices of an original polygon(s), whereby these new vertices reside within or on the ROI boundary. A procedure referred to as the Intersection Method is such cropping technique. The Intersection Method generally involves generating multiple cropped polygons of an original polygon(s) using the algorithm C=A∪B, wherein shape A is a polygon, shape B is the ROI and intersections C are multiple new, smaller polygons. Once cropping is complete each vertex is then located and summated for the total convolution summation of the polygon. In so doing, this approach is also time consuming, tedious and requires a sufficient amount of memory as each vertex must be located, and then its convolution contribution retrieved for the summation of convolution of all vertices of the polygon. Polygon pinning procedures generally involve locating vertices residing outside the ROI and then pinning such vertices to the boundaries of or within the ROI. Pinning procedures are generally more efficient than cropping procedures in modeled based OPC, however, they still require a large amount of overhead if such procedure are repeated for the convolution calculation for all sample points in the ROI.
Consequently, a need exists in the art for providing improved fast, easy methods for summation of convolution contribution of vertices of a polygon for use in OPC engines.
Accordingly, the present invention overcomes the above problems and deficiencies in the prior art by providing improved methods for use in model-based optical proximity correction by defining a new ROI beyond its interaction distance ID to reduce the amount of time required to locate and summate convoluted vertices of a polygon within the ROI for the overall convolution summation of the polygon.